package cn.lili.modules.service;

import cn.lili.common.vo.ResponseBean;
import cn.lili.modules.dto.CommentVideoDTO;
import cn.lili.modules.dto.ShareDTO;
import cn.lili.modules.entity.AppGive;
import com.baomidou.mybatisplus.extension.service.IService;

/**
 * @author:xiangqian
 * @date: 2024/3/8 20:29
 */
public interface AppGiveService extends IService<AppGive> {

    /**
     * 是否点赞查询
     *
     * @param openid 当前用户openID
     * @param id     当前作者ID
     * @return 0没有 1有
     */
    Long getAppGiveCount(String openid, String id);

    /**
     * 点赞或取消视频点赞
     *
     * @param id    视频ID
     * @param token 用户token
     * @return 是否成功
     */
    ResponseBean giveVideo(String id, String token);

    /**
     * 评论视频/回复评论
     *
     * @param commentVideoDTO 评论视频/回复评论内容
     * @return 是否成功
     */
    ResponseBean commentVideo(CommentVideoDTO commentVideoDTO);

    /**
     * 转发/分享小视频
     *
     * @param shareDTO 转发/分享小视频内容
     * @return 是否成功
     */
    ResponseBean share(ShareDTO shareDTO);

    /**
     * 关注或取消关注
     *
     * @param id    被关注的用户id
     * @param type  1:关注，0：取消关注
     * @param token token
     * @return 是否成功
     */
    ResponseBean followVideoV2(String id, Integer type, String token);
}
